//////////////////////////////////////////////////////////////////////////////////////////////////
// Setup.cpp
//////////////////////////////////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "E9Engine.h"
#include "resource.h"
#include "SetupApp.h"

#define	USER_INIFILE		"setup.ini"

//////////////////////////////////////////////////////////////////////////////////////////////////
// WINMAIN
//////////////////////////////////////////////////////////////////////////////////////////////////
int APIENTRY WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPSTR     lpCmdLine,
                     int       nCmdShow)
{
	// init debug
	BOOL openlog = FALSE;
	ini_getint( file_getfullpath(USER_INIFILE), "ADVANCED", "log",  &openlog );
	D9_INIT("setup.log",NULL,openlog);

	// init engine
	if(!E9_Init()) goto done;

	// init and run application
	BOOL ok;
	cSetupApp* app = snew cSetupApp();
	ok = app->Init( hInstance, hPrevInstance, lpCmdLine, nCmdShow );
	if(ok)
	{
		app->Run();
	}
	app->Done();// done application destroys partial init if needed
	sdelete(app);
	
	// done engine
	E9_Done();

	done:
	// done debug
	D9_DONE();
	return 0;
	
}

//////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////
